An Execution Model for Fine-Grained Parallelism in Ada
نویسندگان
چکیده
This paper extends the authors earlier proposal for providing Ada with support for fine-grained parallelism with an execution model based on the concept of ab-stract executors, detailing the progress guarantees that these executors must pro-vide and how these can be assured even in the presence of potentially blocking operations. The paper also describes how this execution model can be applied to real-time systems. An Execution Model for Fine-Grained Parallelism in Ada Luís Miguel Pinho Brad Moore 2 Stephen Michell 3 S. Tucker Taft 4 1 CISTER/INESC-TEC, ISEP, Polytechnic Institute of Porto, Portugal, [email protected] 2 General Dynamics, Canada, [email protected] 3 Maurya Software Inc, Canada, [email protected] 4 AdaCore, USA, [email protected] Abstract. This paper extends the authors earlier proposal for providing Ada with support for fine-grained parallelism with an execution model based on the concept of abstract executors, detailing the progress guarantees that these executors must provide and how these can be assured even in the presence of potentially blocking operations. The paper also describes how this execution model can be applied to real-time systems. This paper extends the authors earlier proposal for providing Ada with support for fine-grained parallelism with an execution model based on the concept of abstract executors, detailing the progress guarantees that these executors must provide and how these can be assured even in the presence of potentially blocking operations. The paper also describes how this execution model can be applied to real-time systems.
منابع مشابه
Tasklettes - A Fine Grained Parallelism for Ada on Multicores
The widespread use of multi-CPU computers is challenging programming languages, which need to adapt to be able to express potential parallelism at the language level. In this paper we propose a new model for fine grained parallelism in Ada, putting forward a syntax based on aspects, and the corresponding semantics to integrate this model with the existing Ada tasking capabilities. We also propo...
متن کاملOpenMP Tasking Model for Ada: Safety and Correctness
The safety-critical real-time embedded domain increasingly demands the use of parallel architectures to fulfill performance requirements. Such architectures require the use of parallel programming models to exploit the underlying parallelism. This paper evaluates the applicability of using OpenMP, a widespread parallel programming model, with Ada, a language widely used in the safety-critical d...
متن کاملScheduling DAG's for Asynchronous Multiprocessor Execution
A new approach is given for scheduling a sequential instruction stream for execution “in parallel” on asynchronous multiprocessors. The key idea in our approach is to exploit the fine grained parallelism present in the instruction stream. In this context, schedules are constructed by a careful balancing of execution and communication costs at the level of individual instructions, and their data...
متن کاملA Multiprocessor Architecture Combining Fine-Grained and Coarse-Grained Parallelism Strategies
A wide variety of computer architectures have been proposed that attempt to exploit parallelism at different granularities. For example, pipelined processors and multiple instruction issue processors exploit the fine-grained parallelism available at the machine instruction level, while shared memory multiprocessors exploit the coarse-grained parallelism available at the loop level. Using a regi...
متن کاملBalancing Fine- and Medium-Grained Parallelism in Scheduling Loops for the XIMD Architecture
This paper presents an approach to scheduling loops that leverages the distinctive architectural features of the XIMD, particularly the variable number of instruction streams and low synchronization cost. The classical VLIW and MIMD architectures have a fixed number of instruction streams, each with a fixed width. A compiler for the XIMD architecture can exploit fine-grained parallelism within ...
متن کامل